Gesture identification

ABSTRACT

Various methods and systems are provided to allow a user to perform finger gesture motions, such as making typing, swiping, tapping, or other types of finger motions to provide device input, such as typing, clicking, or selecting data into a webpage, application, operating system, or toolbar, that was normally performed by the user having to use a keyboard, mouse, stylus, microphone, touchscreen, or another input device.

CROSS REFERENCE TO RELATED APPLICATION

This application is a Continuation Application to U.S. patentapplication Ser. No. 14/039,677, filed on Sep. 27, 2013, entitled“Gesture Identification,” which in turn claims priority to U.S.Provisional Patent Application Ser. No. 61/870,179, filed on Aug. 26,2013, entitled “Gesture Identification,” the disclosures of which areincorporated herein by reference in their entirety.

BACKGROUND

Field of the Invention

The present invention generally relates to gesture identification, andin particular, recognizing finger motions to perform typing, navigation,and other actions on mobile devices.

Related Art

In a typical financial transaction involving a payment provider, arequest is made to the payment provider to authorize a payment or amoney transfer. The request is made by a payee, such as a merchant,seller, or recipient, or by a payer, such as a consumer, purchaser, orsender, when the payment is ready to be made. The payment provider mayrequest certain information necessary to process the payment, such as aname, address, phone number, credit or debit card number, accountnumber, payee information, transaction information, and/or other billinginformation from the payer. The payment provider then processes thepayment request and returns an authorization, a decline, or othernotification.

However, the size of the keyboard and display on a mobile deviceconstrains the consumer's ability to type or enter needed information,such as billing or authentication information, resulting in difficultyin accurately and quickly capturing the input from the consumer. As aresult, the user may make typing errors when entering information into amobile device. This may lead to processing delays in the transaction,cancelled orders, and consumer frustration. Therefore, a need exists forusers to be able to enter information via a mobile device without thedisadvantages of conventional methods.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a flowchart showing a process for calibrating a gestureidentification system according to one embodiment;

FIG. 2 is a flowchart showing a process for a gesture identificationsystem that generates input for a back-end entity according to oneembodiment;

FIG. 3 is a block diagram of a computer system suitable for implementingone or more components of FIG. 2 according to one embodiment of thepresent disclosure; and

FIG. 4 is a block diagram of a networked system configured to handle atransaction using gesture identification according to one embodiment.

Embodiments of the present disclosure and their advantages are bestunderstood by referring to the detailed description that follows. Itshould be appreciated that reference numerals are used to identifysimilar elements illustrated in one or more of the figures, whereinshowings therein are for purposes of illustrating embodiments of thepresent disclosure and not for purposes of limiting the same.

DETAILED DESCRIPTION

According to one embodiment of the disclosure, a gesture identificationsystem processes data input through user finger gestures captured from auser device. The system receives input of one or more finger gesturemotions made by a user and sensed by a user device, where the input ismade without the user touching the user device and the one or morefinger gesture motions correspond to keys of a QWERTY keypad or to aspecific spatial position of one or more data inputs on a currentdisplay of the user device. The system then identifies a current gesturemapping based on the one or more finger gesture motions and accesses adatabase of a plurality of stored gesture mappings associated withfinger gesture motions of the user. From this, the system matches thecurrent gesture mapping with the stored gesture mappings and determinesa corresponding device input based on the stored gesture mapping thatmatches the current gesture mapping. The system can then process theinput as if the user typed the information directly into a keypad orvirtual keyboard or selected/tapped one or more keys on the display ofthe user device.

In one embodiment, a user makes a typing motion in view of a camera toconvey input, such as a password or PIN, into a webpage, form, field,toolbar, or an application. The user simply types with the user's fingeranywhere in view of a camera without requiring the user to type on avirtual or physical keyboard. The camera captures the user's fingermotions, and a gesture identification system converts the motions intosystem input. In one embodiment, the finger gesture motion is notperformed in contact with a physical user device and is detected vianon-contact sensors. A sensor device such as a camera or motion sensorcan be used to detect the motion. In another embodiment, the fingergesture motions are in contact with a physical sensor that connects tothe user device. The sensor device may also be a device such as anaccelerometer, controller, or glove-like device that is connected to theuser device. The system then displays the corresponding input onto thescreen.

Other types of user actions include tapping, swiping, and coordinatedfinger motions involving one or more fingers to perform application,browser, operating system, or device functions. For example, the usermay calibrate the system to expand a webpage when the left and rightindex fingers move in opposite directions. In another embodiment, afinger motion in the shape or form of the letter or character, typicallyconveyed by hitting the letter or character on the keyboard, is used toinput the character into the system and displayed on the screen. In oneembodiment, the finger gesture motions are associated with device input,such as keystrokes on a QWERTY keyboard for inputting typed informationinto the back-end entity or to a specific spatial position of one ormore data inputs on the current display of the user device.

In one embodiment, the gesture identification system captures a user'sfinger gesture motions using a camera. The finger gesture motion mayinvolve swiping, dragging, typing, tapping or other motion orcombination of motions. In another embodiment, the finger gesture motionmay be a checkmark or in the form of an alphanumeric character. Thesystem converts the motions into device input for a back-end entity(e.g. webpage, operating system, or other application) via a userdevice, such as a mobile phone, PC, tablet, or other computing device.In other embodiments, the finger gesture motion represents cursormotions, such as clicking, double clicking, moving the mouse cursor,scrolling, dragging, dropping objects, grouping objects, or other suchactions.

Thus, the user is provided a unique way to provide input into a userdevice, particularly a smartphone device or other such small handhelddevice, without having to manipulate more smaller-scaled input devicesthat accompany handheld devices. A further advantage is that theinformation may be more secure from people looking over the user'sshoulders to obtain a user's confidential information, such as apassword. It is much more difficult for a fraudster to determine thekeys entered when the user simply moves fingers in the air as opposed toseeing where the user has pressed actual keys from a display or physicalkeyboard.

It is understood that the following disclosure provides differentembodiments, or examples, for implementing different features of thedisclosure. Specific examples of components and arrangements aredescribed below to simplify the present disclosure. These are, ofcourse, merely examples and are not intended to be limiting. Moreover,the formation of a first feature over or on a second feature in thedescription that follows may include embodiments in which one or more ofthe first and second features are formed in direct contact, and may alsoinclude embodiments in which additional features may be formedinterposing the first and second features such that the first and secondfeatures may not be in direct contact. Various features may bearbitrarily drawn in different scales for the sake of simplicity andclarity. It is noted that the same or similar features may be similarlynumbered herein for the sake of simplicity and clarity. In addition,some of the drawings may be simplified for clarity. Thus, the drawingsmay not depict all of the components of a given apparatus (e.g., device)or method.

Unless otherwise defined, all terms (including technical and scientificterms) used herein have the same meaning as commonly understood by oneof ordinary skill in the art to which this disclosure belongs. It willbe further understood that terms, such as those defined in commonly useddictionaries, should be interpreted as having a meaning that isconsistent with their meaning in the context of the relevant art andthis disclosure, unless otherwise noted herein.

As used herein, the singular forms “a,” “an,” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises”and/or “comprising”, when used in this specification, specify thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof. The term “and/or” includes allcombinations of one or more of the associated listed items.

It will be understood that although the terms “first,” “second,”“third,” and so on, may be used herein to describe various elements,steps, or devices, the elements, steps, or devices should not be limitedby these terms. These terms are only used to distinguish one element,step, or device from another element or device. Thus, a first element,step, or device discussed below could be termed a second element, step,or device without departing from the teachings of the presentdisclosure.

It is understood that one or more processing steps and/or features of adevice may be only briefly described, such steps and/or features beingwell known to those of ordinary skill in the art. Also, additionalprocessing steps or features can be added and certain processing stepsor features can be removed and/or changed while still implementing theclaims. One or more processing steps can also be omitted, performed in adifferent sequence, or combined. Thus, the following description shouldbe understood to represent examples only, and are not intended tosuggest that one or more steps or features is required.

Example methods and systems to perform gesture identification togenerate, manage, navigate, and/or provide device input are described.In the following description, for purposes of explanation, numerousspecific details are set forth in order to provide a thoroughunderstanding of example embodiments. It will be evident, however, toone skilled in the art that the present disclosure may be practicedwithout these specific details.

The gesture identification system recognizes finger gesture motions andassociates the finger gesture motions to a corresponding device inputfor an application, browser, or any other resource that accepts userinput or information, including, for example, an operating system, on acomputing device. Finger gesture motion(s) include motions made by oneor more fingers. The gesture identification system may include a sensordevice, including, for example, a motion sensor, an accelerometer, wiredgloves, a camera, a stylus, and/or a controller. The sensor devicereceives an input of one or more finger gesture motions and sends theinput to a processor. The processor identifies a corresponding gesturemapping for each finger gesture motion and accesses a database of storedgesture mappings to match the gesture mapping with a stored gesturemapping associated with the user device. The stored gesture mappingcorresponds to a device input that is provided as input to anapplication, browser, or other resource that accepts user input. In oneembodiment, the finger gesture motions are used to convey informationtypically typed on a QWERTY keyboard to fill out forms, documents,fields, toolbars, or other such input fields that require alphanumericor ASCII user input. In other embodiments, the finger gesture motionsconvey functions, such as selecting, copying, pasting, zooming, andscrolling, performed by other device input devices, such as a mouse,trackball, stylus or voice.

FIG. 1 is a flowchart 100 showing a process for calibrating a gestureidentification system according to at least one embodiment. In oneembodiment, the system calibration is for a specific user or device. Thesystem maintains separate user profiles for which would containdifferent calibration settings for different users and/or devices. Theuser may have to login into or create a user profile to calibrate thesystem. In another embodiment, the system calibration is not user ordevice specific. At step 102, the gesture identification system displaysa request for an input of a finger gesture motion that corresponds to adevice input. The display of the request may be displayed through a userdevice, such as a mobile phone, PC, table, laptop, or other computingdevice. In one embodiment, the request may be that of a singlecharacter. In another embodiment, the request may be for a certainphrase, sentence, email address, user name, phone number, password,personal information, etc., such that the system can calibrate fingermovements specific for each user and possibly also for specific inputthat may be commonly used, such as login credentials.

The display presented to the user at step 102 may be in response to arequest from the user, such as initiating a transaction, or as part of,including completion of, a transaction. In one example, the user isrequested to enter a password. In response to the seeing the displayrequesting the user for an action, the user performs one or more fingergesture motions. The finger gesture motion may correspond to a deviceinput, such as a click or double-click of a mouse on a specific portionof the display showing a button, link, or box, keyboard input includingalphanumeric characters and/or other ASCII representation, stylus orpointer motion, or other types of manipulation performed by deviceinputs.

The required device input may provide input to a form in a web browser,application, or interface with the operating system. The input maycomprise of an input of login credentials, address information, usercontact information, or other such commonly requested information fromthe user. In other embodiments, the device input provides othercapabilities to interact with the web browser, application, or operatingsystem, such as zooming, scrolling, selecting, or may act as apreconfigured shortcut and assigned to a designated function, forexample, copying, cutting, pasting, printing, searching, orhighlighting. In another embodiment, the finger gesture motion maycorrespond to device input associated with customizable functions orfeatures, such as an electronic signature or personalized attribute. Thegesture motion may correspond to a payment confirmation, buttonselection, or other such selection of a button at a specific location onthe user device display.

In one embodiment, the user may be requesting access to a user account,which requires authentication or a login. In response, the displayedrequest may ask the user to enter alphanumeric text, such as an emailaddress, user name, and/or password/PIN, by moving the user's fingerscorresponding to a QWERTY keyboard configuration in front of a camera,sensor device, or display screen of the user device.

After displaying the request at step 102, the sensor device, at step104, captures and receives a finger gesture motion through the sensordevice, such as a motion sensor, an accelerometer, wired gloves, acamera, a stylus, and/or a controller. The device converts the motion toa signal for processing and transmission. Transmission may be throughany suitable communication medium, such as through a data bus, wireddevice, or wireless device. Sensor information may include the speed ofthe finger motion, relative location of the motion based on the startand endpoint of the finger in relation to previous motions or areference point, and the path of the finger motion.

Once the user performs the gesture motion, the corresponding signal istransmitted and detected at step 104. In another embodiment, the sensorinformation for all the fingers is considered together in determiningthe corresponding device input. In yet another embodiment, only relevantsensor information for a finger gesture motion is considered andinconsequential finger gesture motion sensor information is disregarded.The relevance of the sensor information is determined by a tolerance orthreshold level established as part of the calibration process or set asa default or preferred setting. In one embodiment, the finger gesturemotions do not need to correspond to the size of the typical deviceinput associated with the user device, for example, the user may typeordinarily as one would type on a standard computer QWERTY keyboard andcalibrate one's motions based on the standard keyboard to correspondwith device input associated with the QWERTY keyboard on a smartphone.In another embodiment, the gesture motion may mimic the selection of abutton, selection of an item, or function on the display withouttouching the display or user device. For example, the user may movetheir finger to a position corresponding to a specific location of abutton on a checkout or payment page or the user may drag their fingerto select a group of icons.

In one embodiment, the system may ask the user to repeat the fingermotion (one or more times) to better calibrate the motion. If thesubsequent motion does not match the previous motion(s), the user may beasked to repeat as often as necessary for the system to detectconsistent motions. Tolerances may be dependent on system or devicerequirements. In one embodiment, two or more motions are averaged toobtain the calibrated motion.

At step 106, the system takes the received or averaged finger gesturemotion and creates a gesture mapping that corresponds to the fingergesture motion. In one embodiment, the gesture mapping is created byconnecting discrete points along a representation of the path taken bythe finger motion. The discrete points represent the path taken by thefinger motion, and thus, create the mapping which is then associatedwith a device input. For example, a finger motion in the form of theletter “L” may create discrete points as the finger travels from the topto bottom in a straight vertical line and then from left to right,horizontally, forming a right angle to create a gesture mappingassociated with the capital letter “L.”

In another embodiment, the gesture mapping is created by determining therelative location of the ending position of a finger motion incomparison to prior endpoints. For example, the standard hand positionon a keyboard presumes the left index finger is placed on the “f” keyand the right index finger is on the letter “j.” As different lettersare displayed for calibration to the user, the sensor detects the fingerand hand motions relative to the initial locations of the prior inputsand determines a relative mapping based on those prior inputs.

In another embodiment, a checkmark motion or dollar sign motion may beassociated with the confirmation of a sale order or the click of apurchase or other such button. The creation of the gesture mapping mayinclude the combination of one or more finger gesture motions involvingone or more fingers. In another embodiment, the gesture mapping may be acombination of letters forming a phrase, sentence, or other suchgrouping of characters, such as in a pattern the user would type on aQWERTY keyboard.

Calibration can also be based on a relative location of a button or linkfor a specific page displayed on the user device. For example, within acheckout page, there may be a “buy” or “confirm” button and a “cancel”button, with the “buy” button located to the left of the display and the“cancel” button located to the right. The system may show the user acheckout page for a particular service provider or merchant and ask theuser to make the same motion the user would make to select the “buy”button and the same motion the user would make to select the “cancel”button. The spatial movement and beginning and end location of thefinger may be calibrated to correspond to and match to the selection ofthe particular button.

Thus, as seen, there may be various ways to calibrate non-contactingfinger(s) gestures or movements to specific information or inputintended by the user. As such, the above examples are non-limiting.

In response to creating a gesture mapping based on the received fingergesture motion, at step 108, the gesture mapping is associated with aspecific type of device input. Both the gesture mapping and theassociation with the device input are stored at step 110. Theassociation of the gesture mapping and the device input may include theassociation of the combination of one or more finger gesture motionsinvolving one or more fingers associated with one or more actions,functions, or device inputs. The order of the gesture motions may definea different function or a different order to perform the associatedactions. The association is also stored in a database so that theassociation may be later queried, updated, or modified. In anotherembodiment, the association is also stored in a table lookup where theassociation is prioritized in a table based upon the frequency of use toallow for faster lookup. The table lookup may be associated with one ormore user profiles associated with one or more users or user devices.For example, the table lookup may be based on the user's history. Theuser may also perform certain actions more than other actions, e.g.selecting a pay button. In another embodiment, the table lookup may beassociated with the actions of all users on the system. In anotherembodiment, the user profile may be a group profile.

After the gesture mapping and the association have been stored, thesystem determines if additional device input requires calibration, atstep 112. If for some reason the gesture is not recognizable, forexample, the motion was out of view of the camera, the sensor wasdisconnected, the motion was outside the defined tolerances for thegesture mapping, or the motion was not otherwise recognized, the systemmay request the user to repeat the action or enter a different fingergesture motion. In another embodiment, the system may request that theuser determine if the system requires further calibration. In yetanother embodiment, the determination to end the calibration process isautomatic. The end of the calibration process may be determined basedupon the complete gesture mapping and association to a predetermined setof device inputs. In another embodiment, the user may end or terminatethe calibration process via a user interface or input. If the systemrequires no further calibration, the system, at step 114, notifies theuser of the completion of the calibration process and enters into areceive state awaiting the receipt of an inputted finger gesture motion.In one embodiment, notification may be through a message on the display.In another embodiment, an external indicator such as light, audio, textmessage, or another communication device indicates to the user thecompletion of the calibration process. Otherwise, the system returns tostep 102 to await the next finger gesture motion to calibrate the nextdevice input.

FIG. 2 is a flowchart 200 showing a process for a gesture identificationsystem that generates input for a back-end entity according to at leastone embodiment. The back-end entity may be any type of system or personwho processes a user action, such as a financial institution, a paymentprovider, a merchant or seller, service provider, or an on-linemarketplace. Generally, the back-end device presents a display, in step202, that requires user input, for example, to fill out payment,billing, authentication, identification, or shipment information.

The sensor device, at step 202, awaits an indication to receive andcapture finger gesture motions. In one embodiment, the indication is auser indication such as a mouse click, keyboard input, audio command, orany other user input that identifies the field or location to enter theinput. In another embodiment, a unique gesture motion captured orreceived by the gesture identification system may indicate the start ofthe receiving process.

The sensor device, at step 204, captures and receives a finger gesturemotion through a sensor, such as a motion sensor, accelerometer, wiredgloves, camera, stylus, and/or controller. The device processes themotion converting the movement to a signal for processing andtransmission. Transmission may be through any suitable communicationmedium, such as through a data bus, wired device, or wireless device.Sensor information may include the speed of the finger motion, relativelocation of the motion based on the start and endpoint of the finger inrelation to previous motions or a reference point, and/or the path ofthe finger motion.

Next, at step 206, the system converts the sensor information andcreates a gesture mapping based on the sensor information. The systemassociates the created gesture mapping with that of the gesture motions.In one embodiment, all the finger gesture motions are considered and thesystem converts the corresponding finger gesture motions to create agesture mapping. The gesture mapping may be based on discrete pointsalong the path of the finger motion. In yet another embodiment, onlyrelevant sensor information for a finger gesture motion is consideredand inconsequential finger gesture motion sensor information isdisregarded. The relevance of the sensor information is determined by atolerance or threshold level established as part of the calibrationprocess or set as a default or preferred setting. In one embodiment, thefinger gesture motions do not need to correspond to the size of thetypical device input associated with the user device, for example, theuser may type ordinarily as one would type on a standard computer QWERTYkeyboard and calibrate one's motions based on the standard keyboard tocorrespond with the device input associated with the QWERTY keyboard ona smartphone. In another embodiment, the gesture mappings are associatedwith the finger motions relative to the other fingers or the endpoint ofthe finger motions.

Once the gesture mapping is created or the finger motion is determined,in step 206, the system accesses a database of stored gesture mappings,in step 208. The system determines if the created gesture mapping orfinger motion corresponds to or matches with a stored gesture mapping orfinger motion, in step 210. In one embodiment, the matching accounts fordifferences between the two mappings, such that the motions do not haveto be exact. For example, the determination may allow for differenceswithin a certain threshold or allow for error by setting an allowedtolerance. The system accounts for the tolerance or threshold in thedifferences between the current gesture mapping and the stored gesturemapping. The system recognizes a match so long as the current gesturemapping is within the tolerance or error threshold of the stored gesturemapping. The tolerance may be application, system, user, or actionspecific. For example, authentication may have a lower tolerance thanpage navigation or search term entry.

In another embodiment, the system may account for the user environmentallowing for more tolerance in certain situations, such as when the useris mobile. In one embodiment, the system keeps track of frequently usedinputs in a separate storage area allowing for faster access, such asflash, RAM, or cache. The tracking of the used inputs may be associatedwith a user profile that includes a user history. In one embodiment, theuser profile may be associated with a single user. In anotherembodiment, the user profile may be associated with multiple users or agroup. The user history may contain information regarding the inputsentered by a specific user. The user history may also contain additionalinformation to allow the system to anticipate the user input based onprevious inputs such as pre-filling a form based on a past transaction.

The system, in step 210, determines if the gesture motion isrecognizable and if there is a match. In one embodiment if there is nomatch to a stored gesture mapping, the system will notify the user, asin step 212, and await the receipt of the next action in step 202. Inone embodiment, notification to the user may be through a message on adisplay or other such user interface. In another embodiment,notification may be through an alternative indicator such as an externalvisual or audio indication.

If there is a match, the corresponding device input associated with thestored gesture mapping is determined, in step 214. The finger gesturemotion may correspond to a device input, such as a click or double-clickof a mouse, keyboard input including alphanumeric characters and/orother ASCII representation, stylus or pointer motion, or other types ofmanipulation performed by device inputs. The device input may provideinput to a form in a web browser, application, or interface with theoperating system. In other embodiments, the device input provides othercapabilities to interact with the web browser, application, or operatingsystem, such as zooming, scrolling, selecting, or may act as apreconfigured shortcut and assigned to a designated function, forexample, copying, cutting, pasting, printing, searching, orhighlighting. In another embodiment, the finger gesture motion maycorrespond to device input associated with customizable functions orfeatures, such as an electronic signature or personalized attribute. Inresponse to recognizing the gesture motion, the user may be notified bythe system of a successful input.

In another embodiment, the determined input or action associated withthe gesture motion may be displayed to the user for confirmation. Forexample, if the gesture motion indicated a specific word or phrase, theuser may be displayed the work or phrase and asked to confirm or edit asneeded.

The corresponding device input, in step 216, is used as input into thesystem. In one embodiment, the device input may fill out a form or inputfield in a back-end entity such as a webpage. In another example, thedevice input corresponds to a user password, which is then used toauthenticate the user. Thus, input corresponding to the non-contactfinger gesture motion may be processed as if the user actually enteredor selected information through a keypad or touch screen.

FIG. 3 is a block diagram of a computer system 300 suitable forimplementing one or more embodiments of the present disclosure. Invarious implementations, the user device may comprise a personalcomputing device (e.g., a personal computer, laptop, smart phone, PDA,Bluetooth device, key FOB, badge, etc.) capable of communicating withthe network. The merchant and/or payment provider may utilize a networkcomputing device (e.g., a network server) capable of communicating withthe network. It should be appreciated that each of the devices utilizedby users, merchants, and payment providers may be implemented ascomputer system 300 in a manner as follows.

Computer system 300 includes a bus 302 or other communication mechanismfor communicating information data, signals, and information betweenvarious components of computer system 300. Components include one ormore input/output (I/O) components 306 that process a user action, suchas finger gesture motions, and send a corresponding signal to bus 302for processing. I/O component(s) 306 may also include an outputcomponent, such as a display 304, which may be a touchscreen or othertype of display device. Finger gesture motions may be detected by asensor 310, such as a camera or other type of sensor described herein.

A network interface 312 transmits and receives signals between computersystem 300 and other devices, such as another user device, a web server,or a payment provider server via network 318. In one embodiment, thetransmission is wireless, although other transmission mediums andmethods may also be suitable. One or more processor(s) 314, which can bea micro-controller, digital signal processor (DSP), or other processingcomponent, processes these various signals, such as for display oncomputer system or transmission to other devices via a communicationlink. Processor(s) 314 may also control transmission of information,such as cookies or IP addresses, to other devices.

Components of computer system 300 also include a system memory component320 (e.g., RAM), a static storage component 308 (e.g., ROM), and/or adisk drive. Computer system 300 performs specific operations byprocessor 314 and other components by executing one or more sequences ofinstructions contained in system memory component 320. Logic may beencoded in a computer readable medium, which may refer to any mediumthat participates in providing instructions to processor(s) 314 forexecution. Some frequently used logic may be stored in cache for fasteraccess. Such a medium may take many forms, including but not limited to,non-volatile media, volatile media, and transmission media. In variousimplementations, non-volatile media includes optical or magnetic disks,volatile media includes dynamic memory, such as system memory component320, and transmission media includes coaxial cables, copper wire, andfiber optics, including wires that comprise bus 302. In one embodiment,the logic is encoded in non-transitory computer readable medium.

Some common forms of computer readable media includes, for example,floppy disk, flexible disk, hard disk, magnetic tape, any other magneticmedium, CD-ROM, any other optical medium, punch cards, paper tape, anyother physical medium with patterns of holes, RAM, PROM, EPROM,FLASH-EPROM, any other memory chip or cartridge, or any other mediumfrom which a computer is adapted to read.

The computer system 300 also includes a database 316 to perform gesturemapping lookup based on the received finger gesture motions and thestored gesture mappings in the storage device. In one embodiment, thedatabase 316 may allow for the definition, creation, querying, updating,and overall administration of the database to capture and analyze data.The database 316 may be designed using MySQL, Oracle, SAP, MicrosoftSQL, Microsoft Access, or another Database Management System.

In various embodiments of the present disclosure, execution ofinstruction sequences to practice the present disclosure may beperformed by computer system 300. In various other embodiments of thepresent disclosure, a plurality of computer systems 300 coupled bycommunication link 318 to the network (e.g., such as a LAN, WLAN, PSTN,and/or various other wired or wireless networks, includingtelecommunications, mobile, and cellular phone networks) may performinstruction sequences to practice the present disclosure in coordinationwith one another.

Where applicable, various embodiments provided by the present disclosuremay be implemented using hardware, software, or combinations of hardwareand software. Also, where applicable, the various hardware componentsand/or software components set forth herein may be combined intocomposite components comprising software, hardware, and/or both withoutdeparting from the spirit of the present disclosure. Where applicable,the various hardware components and/or software components set forthherein may be separated into sub-components comprising software,hardware, or both without departing from the scope of the presentdisclosure. In addition, where applicable, it is contemplated thatsoftware components may be implemented as hardware components andvice-versa.

Software, in accordance with the present disclosure, such as programcode and/or data, may be stored on one or more computer readablemediums. It is also contemplated that software identified herein may beimplemented using one or more general purpose or specific purposecomputers and/or computer systems, networked and/or otherwise. Whereapplicable, the ordering of various steps described herein may bechanged, combined into composite steps, and/or separated into sub-stepsto provide features described herein.

FIG. 4 is a block diagram of a networked system configured to handle atransaction using gesture identification according to at least oneembodiment, such as described above. System 400 includes a user 410, auser device 420, web server 430, and/or other user device 440 incommunication over a network 450. The web/merchant server 430 may bemaintained by a payment provider, such as PayPal, Inc. of San Jose,Calif. The web/merchant server displays a web page or form on the clientdevice 420 through the network 450. The user 410, such as the sender orconsumer, fills out a form displayed on the client device 420 tocommunicate information and transact with the web/merchant server 430.

User device 420, web server 420, and other user devices 440 may eachinclude one or more processors, memories, and other appropriatecomponents for executing instructions such as program code and/or datastored on one or more computer readable mediums to implement the variousapplications, data, and steps described herein. For example, suchinstructions may be stored in one or more computer readable media suchas memories or data storage devices internal and/or external to variouscomponents of system 400, and/or accessible over network 450.

Network 450 may be implemented as a single network or a combination ofmultiple networks. For example, in various embodiments, network 450 mayinclude the Internet or one or more intranets, landline networks,wireless networks, cellular networks and/or other appropriate types ofnetworks.

User device 420 may be implemented using any appropriate hardware andsoftware configured for wired and/or wireless communication over network450. For example, in one embodiment, the user device may be implementedas a computing tablet, personal computer (PC), a smart phone, personaldigital assistant (PDA), laptop computer, and/or other types ofcomputing devices capable of transmitting and/or receiving data.

User device 420 may include one or more browser applications 422 whichmay be used, for example, to provide a convenient interface to permituser 410 to browse information available over network 450. For example,in one embodiment, browser application 422 may be implemented as a webbrowser configured to view information available over the Internet.

User device 420 may also include other applications 424 which may beused, for example, to provide client-side processing for performingdesired tasks in response to operations selected by user 410. The otherapplications 424 may be desired in particular embodiments to providedesired features to user device 420. For example, other applications 424may include security applications for implementing client-side securityfeatures, programmatic client applications for interfacing withappropriate application programming interfaces (APIs) over network 450,or other types of applications. Applications 424 may also include email,texting, voice and IM applications that allow user 410 to send andreceive emails, calls, and texts through network 450, as well asapplications that enable the user to communicate, place orders, and makepayments through the payment provider as discussed above.

User device 420 may also include an operating system 426 which requiresnavigation through windows, toolbars, screens, or icons that requireselecting, scrolling, clicking, zooming, and other features, such ascutting, pasting, selecting, or clicking.

Web server 430 may be maintained, for example, by a merchant or selleroffering various products and/or services in exchange for payment to bereceived over network 450. Generally, web server 430 may be maintainedby anyone or any entity that receives money, which includes charities aswell as retailers and restaurants. Web server 430 includes a databaseidentifying available products and/or services (e.g., collectivelyreferred to as items) which may be made available for viewing andpurchase by user 410, including receipts associated with identifiers,such as barcodes. In one embodiment, user 410 may interact withmarketplace application 434 through browser applications over network450 in order to view various products, food items, or servicesidentified in database 432. The user then uses the checkout application436 to purchase the product, item, or service.

A payment service provider 440 may interact with the webserver 430 tocomplete a transaction based on the input provided by user 410 into userdevice 420. The payment service provider may include account information442 pertaining to a plurality of users. In one embodiment, the paymentservice provider 440 includes a transaction database 444 that holds thehistorical transactions of each user 410. In one embodiment, the paymentservice provider 440 may also include a mobile processing application446 that permits ease of use and display of transactions on a mobiledevice.

The foregoing disclosure is not intended to limit the present disclosureto the precise forms or particular fields of use disclosed. As such, itis contemplated that various alternate embodiments and/or modificationsto the present disclosure, whether explicitly described or impliedherein, are possible in light of the disclosure. Having thus describedembodiments of the present disclosure, persons of ordinary skill in theart will recognize that changes may be made in form and detail withoutdeparting from the scope of the present disclosure. Thus, the presentdisclosure is limited only by the claims.

What is claimed is:
 1. A system comprising: a non-transitory memory; andone or more hardware processors coupled to the non-transitory memory andconfigured to execute instructions from the non-transitory memory tocause the system to perform operations comprising: receiving a firstinput of a first gesture motion made by a user via a sensor associatedwith a user device; creating a first current gesture mapping based onthe first gesture motion; accessing, from a database, a table lookupthat stores a portion of a plurality of stored gesture mappings and thatprioritizes the portion of the plurality of stored gesture mappings fordetermining correspondence with a current gesture mapping based on afrequency the portion of the plurality of stored gesture mappings areaccessed; determining, based on the accessing, that the table lookupdoes not include a first stored gesture mapping that corresponds withthe first current gesture mapping; determining that the first currentgesture mapping corresponds with the first stored gesture mapping thatis included in the database and that is associated with a first actionfor the user device; and performing the first action associated with thefirst stored gesture mapping that corresponds with the first currentgesture mapping.
 2. The system of claim 1, wherein the first input ismade without the first gesture motion touching the user device.
 3. Thesystem of claim 1, wherein the first gesture motion includes at leastone finger gesture motion.
 4. The system of claim 1, wherein the tablelookup is associated with actions of a plurality of users that includesthe user.
 5. The system of claim 1, wherein the first stored gesturemapping is prioritized in the database based on a user profileassociated with the user.
 6. The system of claim 1, wherein theoperations further comprise: transitioning a transaction based on thefirst input from a first user input to a second user input.
 7. A methodcomprising: receiving, by a computer system, a first input of a firstgesture motion made by a user via a sensor associated with a userdevice; creating, by the computer system, a first current gesturemapping based on the first gesture motion; accessing, from a database bythe computer system, a table lookup that stores a portion of a pluralityof stored gesture mappings and that prioritizes the portion of theplurality of stored gesture mappings for determining correspondence witha current gesture mapping based on a frequency the portion of theplurality of stored gesture mappings are accessed; determining, based onthe accessing, that the table lookup does not include a first storedgesture mapping that corresponds with the first current gesture mapping;determining, by the computer system, that the first current gesturemapping corresponds with the first stored gesture mapping that isincluded in the database and that is associated with a first action forthe user device; and performing, by the computer system, the firstaction associated with the first stored gesture mapping that correspondswith the first current gesture mapping.
 8. The method of claim 7,wherein the first input is made without the first gesture motiontouching the user device.
 9. The method of claim 7, wherein the firstgesture motion includes at least one finger gesture motion.
 10. Themethod of claim 7, wherein the table lookup is associated with actionsof a plurality of users that includes the user.
 11. The method of claim7, wherein the first stored gesture mapping is prioritized in thedatabase based on a user profile associated with the user.
 12. Themethod of claim 7, further comprising: transitioning, by the computersystem, a transaction based on the first input from a first user inputto a second user input.
 13. A non-transitory machine readable mediumhaving stored thereon machine-readable instructions executable to causea machine to perform operations comprising: receiving a first input of afirst gesture motion made by a user via a sensor associated with a userdevice; creating a first current gesture mapping based on the firstgesture motion; accessing, from a database, a table lookup that stores aportion of a plurality of stored gesture mappings and that prioritizesthe portion of the plurality of stored gesture mappings for determiningcorrespondence with a current gesture mapping based on a frequency theportion of the plurality of stored gesture mappings are accessed;determining, based on the accessing, that the table lookup does notinclude a first stored gesture mapping that corresponds with the firstcurrent gesture mapping; determining that the first current gesturemapping corresponds with the first stored gesture mapping that isincluded in the database and that is associated with a first action forthe user device; and performing the first action associated with thefirst stored gesture mapping that corresponds with the first currentgesture mapping.
 14. The non-transitory machine readable medium of claim13, wherein the first input is made without the first gesture motiontouching the user device.
 15. The non-transitory machine readable mediumof claim 13, wherein the first gesture motion includes at least onefinger gesture motion.
 16. The non-transitory machine readable medium ofclaim 13, wherein the table lookup is associated with actions of aplurality of users that includes the user.
 17. The non-transitorymachine readable medium of claim 13, wherein the first stored gesturemapping is prioritized in the database based on a user profileassociated with the user.
 18. The system of claim 1, wherein theoperations further comprise: receiving a second input of a secondgesture motion made by the user via the sensor associated with the userdevice; creating a second current gesture mapping based on the secondgesture motion; determining that the table lookup includes a secondstored gesture mapping that corresponds with the second current gesturemapping, wherein the second stored gesture mapping is associated with asecond action for the user device; and performing the second actionassociated with the second stored gesture mapping that corresponds withthe second current gesture mapping.
 19. The method of claim 7, furthercomprising: receiving, by the computer system, a second input of asecond gesture motion made by the user via the sensor associated withthe user device; creating, by the computer system, a second currentgesture mapping based on the second gesture motion; determining, by thecomputer system, that the table lookup includes a second stored gesturemapping that corresponds with the second current gesture mapping,wherein the second stored gesture mapping is associated with a secondaction for the user device; and performing, by the computer system, thesecond action associated with the second stored gesture mapping thatcorresponds with the second current gesture mapping.
 20. Thenon-transitory machine readable medium of claim 13, wherein theoperations further comprise: receiving a second input of a secondgesture motion made by the user via the sensor associated with the userdevice; creating a second current gesture mapping based on the secondgesture motion; determining that the table lookup includes a secondstored gesture mapping that corresponds with the second current gesturemapping, wherein the second stored gesture mapping is associated with asecond action for the user device; and performing the second actionassociated with the second stored gesture mapping that corresponds withthe second current gesture mapping.